(()=>{var kt=Object.create;var me=Object.defineProperty;var Ct=Object.getOwnPropertyDescriptor;var At=Object.getOwnPropertyNames;var Pt=Object.getPrototypeOf,Dt=Object.prototype.hasOwnProperty;var It=(t,e)=>()=>(t&&(e=t(t=0)),e);var pe=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var $t=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of At(e))!Dt.call(t,o)&&o!==r&&me(t,o,{get:()=>e[o],enumerable:!(n=Ct(e,o))||n.enumerable});return t};var Ot=(t,e,r)=>(r=t!=null?kt(Pt(t)):{},$t(e||!t||!t.__esModule?me(r,"default",{value:t,enumerable:!0}):r,t));var c,s=It(()=>{c={eu1:"1.5.9","eu1-b":"1.5.0-eu1b",us1:"1.5.9"}});var ft=pe((is,dt)=>{s();var Nr=[{name:"Chrome",flags:["isChrome"],regex:/(?:Chrome|CriOS)\/([0-9]+)\./i},{name:"Firefox",flags:["isFirefox"],regex:/Firefox\/([0-9]+)\./i},{name:"IE",flags:["isIE"],regex:/(?:MSIE|Trident.*rv)[: ]([0-9]+)\./i},{name:"Opera",flags:["isOpera"],regex:/Opera\/.*Version\/([0-9]+)/i},{name:"Safari",flags:["isSafari"],regex:/AppleWebKit\/.*Version\/([0-9]+)/i},{name:"Unknown",flags:["isUnknown"],regex:null}],Mr=[{name:"Motorola Razr",flags:["isTablet"],platform:"Tablet",regex:/ Android .*? Droid Razr/i},{name:"Motorola Xoom",flags:["isTablet"],platform:"Tablet",regex:/ Android .*? Xoom/i},{name:"Samsung Tablet",flags:["isTablet"],platform:"Tablet",regex:/ Android .*? (SCH-I|GT-P)/i},{name:"Android Phone",flags:["isPhone"],platform:"Phone",regex:/ Android .*? (Chrome|Version)\/[.0-9]* Mobile/i},{name:"Android Tablet",flags:["isTablet"],platform:"Tablet",regex:/ Android .*? (Chrome|Version)\/[.0-9]* (?!Mobile)/i},{name:"Firefox OS",flags:["isPhone"],platform:"Phone",regex:/Mozilla.*?Mobile.*?Gecko.*?Firefox/i},{name:"iPad",flags:["isTablet"],platform:"Tablet",regex:/iPad/i},{name:"iPhone",flags:["isPhone"],platform:"Phone",regex:/iPhone|iPod/i},{name:"BlackBerry Phone",flags:["isPhone"],platform:"Phone",regex:/BlackBerry|BB10/i},{name:"BlackBerry Playbook",flags:["isTablet"],platform:"Tablet",regex:/Playbook/i},{name:"Motorola Droid",flags:["isPhone"],platform:"Phone",regex:/(Droid|SHOLS_U2|XT[0-9]{4})/i},{name:"HTC",flags:["isPhone"],platform:"Phone",regex:/HTC One|HTC Sensation|Sprint APA9292KT/i},{name:"Kindle",flags:["isTablet"],platform:"Tablet",regex:/Silk|Kindle/i},{name:"LG",flags:["isPhone"],platform:"Phone",regex:/LG-M|LG-E|LG-P/i},{name:"Nexus Phone",flags:["isPhone"],platform:"Phone",regex:/Nexus 4|Nexus 5|Nexus S/i},{name:"Nexus Tablet",flags:["isTablet"],platform:"Tablet",regex:/Nexus 7|Nexus 10/i},{name:"Nokia",flags:["isPhone"],platform:"Phone",regex:/Nokia|Windows Phone/i},{name:"Samsung Phone",flags:["isPhone"],platform:"Phone",regex:/SM-N900|GT-I|GT-N|SAMSUNG-SGH|SAMSUNG SCH/i},{name:"Sony",flags:["isPhone"],platform:"Phone",regex:/LT28|SonyEricsson|Sony/i},{name:"PC",flags:["isDesktop"],platform:"Desktop",regex:null}];function Ur(t,e){Nr.some(function(r){var n=null;if(!r.regex||(n=r.regex.exec(e)))return t.browser=r.name,r.flags.forEach(function(o){t[o]=!0}),t.version=n&&n.length>0?Number(n[1]):0,e.indexOf("Trident/4")!==-1&&t.version<8&&(t.version=8),e.indexOf("Trident/5")!==-1&&t.version<9&&(t.version=9),e.indexOf("Trident/6")!==-1&&t.version<10&&(t.version=10),e.indexOf("Trident/7")!==-1&&t.version<11&&(t.version=11),!0})}function jr(t,e){Mr.some(function(r){if(!r.regex||r.regex.test(e))return t.device=r.name,r.flags.forEach(function(n){t[n]=!0}),t.platform=r.platform,!0})}dt.exports=function(t){var e={browser:"IE",device:"PC",isChrome:!1,isDesktop:!1,isFirefox:!1,isIE:!1,isOpera:!1,isPhone:!1,isSafari:!1,isTablet:!1,isUnknown:!1,platform:"Desktop",version:0};return Ur(e,t),jr(e,t),e}});var pt=pe((cs,mt)=>{s();mt.exports=ft()});s();s();function he(){try{decodeURIComponent(location.href)}catch{throw new Error("invalid UTF-8 on url-encoded query params")}}s();s();s();s();var U,Lt=new Uint8Array(16);function Q(){if(!U&&(U=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!U))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return U(Lt)}s();var h=[];for(let t=0;t<256;++t)h.push((t+256).toString(16).slice(1));function ge(t,e=0){return h[t[e+0]]+h[t[e+1]]+h[t[e+2]]+h[t[e+3]]+"-"+h[t[e+4]]+h[t[e+5]]+"-"+h[t[e+6]]+h[t[e+7]]+"-"+h[t[e+8]]+h[t[e+9]]+"-"+h[t[e+10]]+h[t[e+11]]+h[t[e+12]]+h[t[e+13]]+h[t[e+14]]+h[t[e+15]]}s();s();var Nt=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),Y={randomUUID:Nt};function Mt(t,e,r){if(Y.randomUUID&&!e&&!t)return Y.randomUUID();t=t||{};let n=t.random||(t.rng||Q)();if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,e){r=r||0;for(let o=0;o<16;++o)e[r+o]=n[o];return e}return ge(n)}var P=Mt;s();var J="__DF_DEBUG_MODE__",_e="true",D=window.sessionStorage;function ye(){D.setItem(J,_e)}function xe(){D.removeItem(J)}function Ut(){return D.getItem(J)===_e}function j(t){return D.getItem(t)||window[t]}function q(t,e){D.setItem(t,e)}function d(...t){Ut()&&console.log("[doofinder]",...t)}s();s();var be={canPushState(){return typeof history.pushState<"u"},dropLocal(t,e,r){return t.removeItem(this.localKey(e,r))},updateLocal(t,e,r,n,o){let i=this.getLocal(t,e,r),a=this.localKey(e,r),l=i===null?n:o(i);return t.setItem(a,JSON.stringify(l)),l},getLocal(t,e,r){return JSON.parse(t.getItem(this.localKey(e,r)))},updateCurrentState(t){this.canPushState()&&history.replaceState(t(history.state||{}),"",window.location.href)},pushState(t,e,r){if(this.canPushState()){if(r!==window.location.href){if(e.type=="redirect"&&e.scroll){let o=history.state||{};o.scroll=e.scroll,history.replaceState(o,"",window.location.href)}delete e.scroll,history[t+"State"](e,"",r||null);let n=this.getHashTargetEl(window.location.hash);n?n.scrollIntoView():e.type==="redirect"&&window.scroll(0,0)}}else this.redirect(r)},setCookie(t,e){document.cookie=`${t}=${e}`},getCookie(t){return document.cookie.replace(new RegExp(`(?:(?:^|.*;s*)${t}s*=s*([^;]*).*$)|^.*$`),"$1")},redirect(t,e){e&&be.setCookie("__phoenix_flash__",e+"; max-age=60000; path=/"),window.location=t},localKey(t,e){return`${t}-${e}`},getHashTargetEl(t){let e=t.toString().substring(1);if(e!=="")return document.getElementById(e)||document.querySelector(`a[name="${e}"]`)}},X=be;s();var Z="df-cookies-allowed",W=window.localStorage;function ee(){W.setItem(Z,"true")}function Se(){W.removeItem(Z)}function ve(){return JSON.parse(W.getItem(Z)||"false")}var we="df",Ee=window.localStorage;function I(t,e=Ee){return X.getLocal(e,we,t)}function y(t,e,r=Ee){return ve()?X.updateLocal(r,we,t,e,()=>e):null}var Ae=12*60*60*1e3,Te="random-userid",V="session",ke="apps",Ce="tab-id";function Pe(){return{id:P().replaceAll("-",""),expiry:new Date().getTime()+Ae,live:[]}}function te(){let t=I(V);return(!t||jt(t))&&(t=Pe()),y(V,t)}function jt({expiry:t}){return te.live.includes(n))}};s();function qt(){return{"content-type":"application/json"}}async function z(t,e={}){return(await fetch(t,{method:"GET",cache:"no-cache",mode:"cors",headers:qt(),...e})).json()}var H=class{constructor(e){this.zone=e}async add(e,r,{id:n,title:o,price:i},a=1){let l=`${this.url(e)}/cart/${p.getSessionId()||""}`,f=JSON.stringify({amount:a,id:n,title:o,price:i,index:r});return z(l,{method:"PUT",body:f})}async remove(e,r,n,o=1){let i=`${this.url(e)}/cart/${p.getSessionId()||""}`,a=JSON.stringify({amount:o,id:n,index:r});return z(i,{method:"PATCH",body:a})}async clear(e){let r=`${this.url(e)}/cart/${p.getSessionId()||""}`;return z(r,{method:"DELETE"})}async checkout(e){let r=JSON.stringify({session_id:p.getSessionId(),user_id:p.getUserId(),sources:p.getLastUsedApps().split(",")});return z(`${this.url(e)}/checkout`,{method:"PUT",body:r})}url(e){return`https://${this.zone}-search.doofinder.com/6/${e}/stats`}};s();function Ie(t){return q("__DF_CDN_PREFIX__",t)}s();function $e(t){return q("__DF_LAYER_SERVER__",t)}s();s();async function $(t,e,r=!1){if(!document.querySelector(`script[src="${t}"]`)){let n=document.createElement("script");n.src=t,n.async=1,r&&(n.type="module"),e&&(n.onerror=()=>$(e)),document.head.appendChild(n)}}async function Oe(t,e){$(t,e,!0)}async function Re(t){if(!document.querySelector(`link[rel="modulepreload"][href="${t}"]`)){let e=document.createElement("link");e.setAttribute("rel","modulepreload"),e.setAttribute("href",t),e.onerror=()=>{$(t,null,!0)},document.head.appendChild(e)}}async function re(t,e){if(!document.querySelector(`link[rel="stylesheet"][href="${t}"]`)){let r=document.createElement("link");r.setAttribute("rel","stylesheet"),r.setAttribute("href",t),e&&(r.onerror=()=>re(e)),document.head.appendChild(r)}}async function v(t){let e=document.createElement("style");e.appendChild(document.createTextNode((t||"").trim())),document.head.appendChild(e)}s();s();var T=class{constructor(e={}){e=Object.assign({resolveTimeout:null,resolveValue:!0,rejectTimeout:null,rejectValue:!1},e),this._promise=new Promise((a,l)=>{this.resolve=a,this.reject=l}),this.then=this._promise.then.bind(this._promise),this.catch=this._promise.catch.bind(this._promise),this.finally=this._promise.finally.bind(this._promise),this[Symbol.toStringTag]="Promise";let{resolveTimeout:r,resolveValue:n,rejectTimeout:o,rejectValue:i}=e;r&&setTimeout(()=>this.resolve(n),r),o&&setTimeout(()=>this.reject(i),o)}get promise(){return this._promise}};s();s();var x=new Promise((t,e)=>{document.readyState!="loading"?t():document.addEventListener("DOMContentLoaded",()=>{t()})});var O="recommendations",ne="";function Vt(t){return[O,{}]}function zt(t,e,r){let n=r.find(a=>a.name==O);if(!n)return console.error(`Doofinder app '${O}' not enabled`),null;let o=Qt(t,e,n),i=Ft(o);return{...o,custom_css:n.overrides.custom_css,custom_template:n.overrides.custom_template,matchingPageTypes:i,widgets:[...Gt(i,o),...Kt(o)]}}function Ht(t,e,r){if(!Bt(t))return ne=window.location.href,null;let n=e[O];return{assets:n[t.device],cdn_prefix:n.cdn_prefix,vsn:n.vsn,appConfig:t,onRegister:function(o){x.then(()=>{window.location.href===ne||document.querySelector("df-recommendations-v2")||(o.deleteTags(t),o.create(t),ne=window.location.href)})}}}var oe={appName:O,backendAppToScriptApp:Vt,buildConfig:zt,buildSettingsConfig:Ht};function Bt({widgets:t}){return t.length!==0}function Ft({pageTypeMappings:t}){let e=window.location.href;return t.reduce((r,n)=>{let{match_conditions:o}=n;return o.length===0?r:o.some(i=>Yt(e,i))?[n,...r]:r},[])}function Kt({widgets:t}){return t.filter(e=>!e.page_type_id)}function Gt(t,{widgets:e,overridePageTypeCheck:r}){if(r)return e;let n=t.map(o=>o.id);return e.filter(o=>n.includes(o.page_type_id))}function Qt(t,e,r){let n=Jt(e);if(n.length>0){let i=n.map(a=>{let l=r.widgets.find(f=>f.widget_id===a.widget_id);if(l)return{...a,widget_id:a.widget_id,page_type_id:l.page_type_id,insertion_point:a.insertion_point||l.options.insertion_point,insertion_method:a.insertion_method||l.options.insertion_method,hooks:a.hooks,hashids:l.overrides.hashids};console.error(`Custom recommendations widget '${a.widget_id}' does not exist`)}).filter(a=>!!a);return{...t,widgets:[...i],overridePageTypeCheck:!0}}let o=r.widgets.map(i=>({widget_id:i.widget_id,page_type_id:i.page_type_id,insertion_point:i.options.insertion_point,insertion_method:i.options.insertion_method,hooks:i.options.hooks,hashids:i.overrides.hashids}));return{...t,widgets:o,overridePageTypeCheck:!1}}function Yt(t,{match_type:e,value:r}){switch(e){case"equals":return Le(t)==Le(r);case"contains":return t.includes(r);case"starts_with":return t.startsWith(r);case"regex":try{return new RegExp(r,"i").test(t)}catch{return!1}default:return!1}}function Le(t){try{let e=new URL(t);return e.origin+e.pathname}catch{return t}}function Jt(t){return t?Array.isArray(t)?[...t]:Object.hasOwn(t,"widget_id")?[{...t}]:[]:[]}async function Ne(t,e){if(!t.includes("recommendations"))return;let n=new MutationObserver(()=>{n.disconnect(),e(),n.observe(document,{childList:!0,subtree:!0})});n.observe(document,{childList:!0,subtree:!0})}s();var k="quiz";function Xt(t){return[k,{quiz_id:t.quiz_id}]}function Zt(t,e,r){let n=r.find(i=>i.name==k&&i.quiz_id==e.quiz_id);if(!n)return console.error(`Doofinder app '${k}' not enabled or wrong quiz_id`),null;let o={quiz_id:e.quiz_id,trigger:e.trigger||n.options.trigger,hashid:n.overrides.hashid,custom_css:n.overrides.custom_css,hooks:e.hooks,account_code:t.account_code};return{...t,...o}}function Wt(t,e,r){let n=e[k],o=n.vsn?.[t.zone];return{assets:n[t.device],cdn_prefix:e[k].cdn_prefix,cdn_fallback:n.cdn_fallback,vsn:o,appConfig:t,onRegister:function(i){x.then(()=>{let a=i.create(t);typeof r=="function"&&r(a)})}}}var se={appName:k,backendAppToScriptApp:Xt,buildConfig:Zt,buildSettingsConfig:Wt};s();s();s();function Me(t,e={}){let r=document.querySelector(t);return r?Promise.resolve(r):new Promise((n,o)=>{let i=0,a=null,l=e.interval||500,f=e.times||10;a=setInterval(function(){i++r.offsetWidth>0&&r.offsetHeight>0)}async updateQuery(e=""){let r=await this.getElement();r instanceof HTMLInputElement&&(r.value=e)}async focus(){let e=await this.getElement();e instanceof HTMLInputElement&&e.focus()}setCaptureLength(e){this._minCaptureLength=e||Ue}async getElement(){if(!(!this._enabled||!this._elementSelector)){if(!this._element)try{this._element=await Me(this._elementSelector)}catch{this._element=void 0}return this._element}}get enabled(){return this._enabled}set enabled(e){if(this._enabled!==!!e){this._enabled=!!e;let r=document[`${this._enabled?"add":"remove"}EventListener`];this._events.forEach(n=>r(...n))}}get captureSubmit(){return this._handleSubmit}set captureSubmit(e){this._handleSubmit=!!e}get redirection(){if(this._redirection)return{...this._redirection}}set redirection(e){this._redirection=e}setEventBus(e){this._eventBus=e}flushMessages(){if(this._eventsQueue=[...new Map(this._eventsQueue).entries()],this._eventsQueue.length>0){let e=this._eventsQueue.shift();for(;e&&e.length===2;)d("trigger:emit",e),this._eventBus?.emit(...e),e=this._eventsQueue.shift()}else document.activeElement===this._element&&this.notify(je,this.getPayload())}destroy(){this._events.forEach(e=>window.removeEventListener(...e))}shouldHandle(e){let r=this.getElementFromEvent(e);return r?(this._element=r,!0):!1}getPayload(e){let r={source:this._element,originalEvent:e};if(this._element instanceof HTMLInputElement){let n=this._element.value.trim();(n.length>=this._minCaptureLength||e?.type==="keydown")&&(r.query=n)}return r}getElementFromEvent(e){if(!e.target||e.target===document||e.target===window)return;let r=e.type==="submit"?"querySelector":"closest",n=e.target[r](this._elementSelector);if(n&&!n.closest("[dfd-hook]"))return n}handleClick(e){this.shouldHandle(e)&&(e.preventDefault(),e.stopImmediatePropagation(),this.notify(je,this.getPayload(e)))}handleFocus(e){this.shouldHandle(e)&&(e.stopImmediatePropagation(),this.notify(er,this.getPayload(e)))}handleInput(e){this.shouldHandle(e)&&this.notify(tr,this.getPayload(e))}handleSubmit(e){this._handleSubmit&&this.shouldHandle(e)&&(e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation(),this.notify(qe,this.getPayload(e)))}handleKeypress(e){e.key==="Enter"&&this.shouldHandle(e)&&(this._redirection||this._handleSubmit)&&(e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation(),this._redirection?window.location=this._redirection.url:e.type==="keydown"&&this.notify(qe,this.getPayload(e)))}notify(e,r){this._eventBus?this._eventBus.emit(e,r):this._eventsQueue.push([e,r]),d("[trigger]",this._eventBus?"[emit]":"[queue]",e,r)}};var R="layer";function rr(t){return[R,{}]}function nr(t,e,r){let n=r.find(a=>a.name==R);if(!n)return console.error(`Doofinder app '${R}' not enabled`),null;let o=n.overrides.autoload,i={trigger:e.trigger||n.options.trigger,url_hash:e.url_hash||e.url_hash===void 0&&n.options.url_hash,hooks:e.hooks,params:e.params,search_query_retention:n.overrides.search_query_retention,sort:e.sort,layout:n.overrides.layout,custom_css:n.overrides.custom_css[t.device],custom_properties:n.overrides.custom_properties[t.device],autoload:o&&o[t.device],type:n.type,exportResultsData:e.exportResultsData,zone:e.zone||n.options.zone||t.zone};return{...t,...i}}function or(t,e,r){let n=e[R],o=t.device=="mobile"?n.mobile:n.desktop[t.layout];t=ie(t);let i=t.custom_properties?.join(` `),a=n.vsn?.[t.zone];return{assets:o,cdn_prefix:n.cdn_prefix,cdn_fallback:n.cdn_fallback,vsn:a,appConfig:t,onRegister:function(l){x.then(()=>{let f=l.create(t);v(`#${f.mount.id} { ${i||""} }`),typeof r=="function"&&r(f)})}}}function ie(t){return t.trigger=sr(t.trigger,t.autoload),t.urlHash=t.url_hash||!1,t.searchQueryRetention=t.search_query_retention,t.layerType=t.layerType||"search",t.installationId=t.store,t}function sr(t,e){let r=new B(t);return r.enabled=!e||e.trigger,r}var ae={appName:R,backendAppToScriptApp:rr,buildConfig:nr,buildSettingsConfig:or};s();var L="chat";function ir(t){return[L,{chat_id:t.chat_id}]}function ar(t,e,r){let n=r.find(i=>i.name==L&&i.chat_id==e.chat_id);if(!n)return console.error(`Doofinder app '${L}' not enabled or wrong chat_id`),null;let o={chat_id:e.chat_id,id:e.id||n.options.id,zone:e.zone||t.zone,trigger:e.trigger||!0,label:e.label,extra_params:e.extra_params||{},meta:e.meta||{}};return{...t,...o}}function cr(t,e,r){let n=e[L],o=n.vsn;return{assets:n[t.device],cdn_prefix:n.cdn_prefix,cdn_fallback:n.cdn_fallback,vsn:o,appConfig:t,onRegister:function(a){x.then(()=>{let l=a.create(t);typeof r=="function"&&r(l)})}}}var ce={appName:L,backendAppToScriptApp:ir,buildConfig:ar,buildSettingsConfig:cr};s();s();function Ve(t){let{url_patterns:e}=t,r=window.location.toString();return d("[category merchandising] __getNewOptions__ category merchandising URL patterns: ",e," url: ",r),lr(e,r)}function lr(t,e){try{let r=ur(t,e);if(!r)return d("[category merchandising] configuration not found for current location, urlStr: ",e),null;let n=ze(r),o=[...e.matchAll(n)][0].groups,i=dr(r,o);return i.url_pattern_id=r.id,d("[category merchandising] configuration found for current location, urlStr: ",e,"categoryMerchandisingConfig: ",r,"capturedValues from URL: ",o,"params to open the layer: ",i),i}catch(r){return d("[category merchandising] error trying to get category merchandising search options: ",r),null}}function ur(t,e){return t.find(r=>{let n=ze(r);return[...e.matchAll(n)].length>0})}function ze(t){let[,,e,r]=t.pattern.match(/(\/?)(.+)\1([a-z]*)/i);r=r||"g";let n=new RegExp(e,r);return d("pattern ",e,"flags",r,"regexp",n),n}function dr(t,e){let r="{{",n="}}",{params:o}=t,i=JSON.stringify(o.search);for(let a in e){let l=`${r}${a}${n}`,f=fr(t,a,`${e[a]}`);d("[category merchandising] replacing old value: ",l,", new value ",f,"at",i),i=i.replaceAll(l,f)}return JSON.parse(i)}function fr(t,e,r){let n=t.params?.transformers;if(!n||!n[e])return d("[category merchandising] __applyTransformer__ transformers not found in categoryMerchandisingConfig",t," for ",e),r;try{return Array.isArray(n[e])?mr(n[e],r):typeof n[e]=="string"?pr(n[e],r):r}catch(o){d("[category merchandising] __applyTransformer__ error ","category merchandising config: ",t,"key",e,"value",r,"error",o)}return r}function mr(t,e){d("[category merchandising] __applyTransformerDefinedAsArray__ ",t);let[r,n]=t,o=r.split("."),i=window[o[0]];return o.slice(1).forEach(a=>i=window[a]),typeof i=="function"?(d("[category merchandising] __applyTransformer__ call function ",r," args: ",[e,n]),i(e,n)):(d("[category merchandising] __applyTransformer__ transformer",r," is not a function. Type: ",typeof i),e)}function pr(t,e){let r=(0,eval)(t);return d("[category merchandising] __applyTransformerDefinedAsString__ completionValue obtained with eval",r," evaluated code ",t),typeof r=="function"?r(e):e}var N="category_merchandising";function hr(t){return[N,{}]}function gr(t,e,r){let n=r.find(a=>a.name==N);if(!n)return console.error(`Doofinder app '${N}' not enabled`),null;let o=n.devices[t.device],i={insertion_point:e.insertion_point||o.options.insertion_point,url_hash:e.url_hash||!1,search:e.search||n.options.search,sort:e.sort||{},hooks:e.hooks,custom_css:o.overrides.custom_css,custom_properties:o.overrides.custom_properties,autoload:o.overrides.autoload,url_patterns:e.url_patterns||n.options.url_patterns,type:"category_pages",zone:e.zone||n.options.zone||t.zone};return{...t,...i}}function _r(t,e,r){let n=e[N],o=n.vsn?.[t.zone],i=n[t.device??"desktop"];t.layerType="category_pages",t=ie(t);let a=t.custom_properties?.join(` `);return{assets:i,cdn_prefix:n.cdn_prefix,cdn_fallback:n.cdn_fallback,vsn:o,appConfig:t,onRegister:function(l){t.search=Ve(t),x.then(()=>{if(t.search){t.forceOpen=!0;let f=l.create(t);v(`#${f.mount.id} { ${a||""} }`),typeof r=="function"&&r(f)}})}}}var le={appName:N,backendAppToScriptApp:hr,buildConfig:gr,buildSettingsConfig:_r};var yr=ae.appName,He=le.appName,F=ce.appName,xr=se.appName,br=oe.appName,Be={LAYER:yr,CHAT:F,QUIZ:xr,RECOMMENDATIONS:br},Fe=[F];function Ke(t){return t.reduce(function(e,r){return e[r]=new T,e},{})}function Ge(t){return async function(e,r){if(!t[e])throw new Error(`unknown "${e}" app!`);r(await t[e])}}function Qe(t,e){document.dispatchEvent(new CustomEvent("doofinder.register",{detail:{name:t,entrypoint:e}}))}function K(t){return[le,ae,oe,se,ce].find(e=>e.appName===t)}s();var G=".min",b="https://cdn.doofinder.com";function Sr(t){return t===F?"0.1.2-lv1.0.2":"0"}var w=`/js/dflayer${G}.js`,E="/css/2/common.css",Ye={js:["/recommendations.min.js"],css:["/recommendations.css"]},Je={js:[`/quiz${G}.js`],css:["/quiz.css"]};function Ze(t){return`${b}/live_view_portal/${Sr(t)}/live_view_portal${G}.js`}var Xe={mjs:[`/chat${G}.js`],css:["/chat.css"]},ue=typeof c>"u"?{eu1:"0",us1:"0","eu1-b":"0"}:c,vr="0.2.2",We=[{vsn:"1.0",recommendations:{cdn_prefix:b+"/recommendations-v2",desktop:Ye,mobile:Ye},layer:{cdn_prefix:b+"/livelayer",cdn_fallback:b+"/livelayer/1",desktop:{Fullscreen:{js:[w],css:[E,"/css/2/fullscreen.css"]},Embedded:{js:[w],css:[E,"/css/2/embedded.css"]},Floating:{js:[w],css:[E,"/css/2/classic.css"]},FloatingEmbedded:{js:[w],css:[E,"/css/2/classic.css","/css/2/embedded.css"]}},mobile:{js:[w],css:[E,"/css/2/mobile.css"]},vsn:ue},category_merchandising:{cdn_prefix:b+"/livelayer",cdn_fallback:b+"/livelayer/1",desktop:{js:[w],css:[E,"/css/2/embedded.css"]},mobile:{js:[w],css:[E,"/css/2/mobile_embedded.css"]},vsn:ue},quiz:{cdn_prefix:b+"/quiz",cdn_fallback:b+"/quiz",desktop:Je,mobile:Je,vsn:ue},chat:{cdn_prefix:b+"/chat",cdn_fallback:b+"/chat",desktop:Xe,mobile:Xe,vsn:vr}}];s();function et(t,e,r=""){let n=j("__DF_CDN_PREFIXES__");return n&&n[t]?n[t]:`${e}${r!=""?"/":""}${r}`}function tt(t,e,r,n,o,i){let a=We[0],l=K(r);if(!l)return console.error(`Doofinder app '${r}' not found`),null;let f=l.buildConfig(e,n,o.apps);if(!f)return console.error(`Doofinder app '${r}' not enabled`),null;let g=l.buildSettingsConfig(f,a,i);if(!g)return null;let A=r==He?"layer":r;return t(A,g.onRegister),wr(r,g.assets,g.cdn_prefix,g.vsn,g.appConfig.custom_css,g.cdn_fallback),g.appConfig}async function wr(t,e,r,n,o,i){let a=et(t,r,n),l=n?`?v=${n}`:"";de(a,l,i,$,e.js),de(a,l,i,Oe,e.mjs),de(a,l,i,re,e.css),o&&Array.isArray(o)?o.forEach(v):o&&v(o)}async function de(t,e,r,n,o){o&&o.forEach(i=>n(`${t}${i}${r?"":e}`,r?`${r}${i}${e}`:void 0))}s();async function rt(t,e){let r=Er(t,e),n=await fetch(r);if(!n.ok)throw new Error(`HTTP error! Status: ${n.status}`);return await n.json()}function Er(t,e){let r=j("__DF_STORE_CONFIG__"),n="",o={eu1:"eu-west-1.",us1:""};switch(e=Object.hasOwn(o,e)?e:"eu1",r){case"provisional-bucket":n=`provisional-${e}-df-store-config-files`;break;case"production-bucket":n+=`${e}-df-store-config-files`;break;case"test":return`http://appsloader/store-configs/${e}/${t}.json`;case"local-directory":break;default:n=`${e}-df-store-config-files`}return`https://${n}.s3.${o[e]}amazonaws.com/${t}.json`}s();s();function nt(t){let e=t?.replaceAll("_","-").trim().split("-")||[];function r(n){return n?`-${n.toUpperCase()}`:""}if(e.length<3){let[n,o]=e;return`${n?.toLowerCase()}${r(o)}`}else{let[n,o,i]=e;return`${n?.toLowerCase()}-${o.toUpperCase()}${r(i)}`}}function ot(t){return t?.trim().toUpperCase()}function st(t,e){let r=Tr(t.language,e),n=kr(r,t.currency,e),o=Cr(t.hashid,r,n,e);return{language:r,currency:n,hashid:o}}function Tr(t,e){let r=t||document.documentElement.getAttribute("lang");if(r){r=nt(r);let n=e.search_engines;return n[r]?r:Ar(n,r)||e.defaults.language}return e.defaults.language}function kr(t,e,r){let n=r.search_engines,o=ot(e);if(o&&n[t]&&n[t][o])return o;let i=n[t]&&Object.keys(n[t]);return i&&!i.includes(r.defaults.currency)?i[0]:r.defaults.currency}function Cr(t,e,r,n){if(t)return t;let o=n.search_engines;return o[e]&&o[e][r]?o[e][r]:n.defaults.hashid}function Ar(t,e){let[r]=e.split("-");if(t[r])return r;let n=Object.keys(t).filter(o=>Pr(o,r)).shift();return t[n]?n:null}function Pr(t,e){let[r]=t.split("-");return r===e}s();s();function M(t){return`https://${t}-api.doofinder.com`}s();async function C(t,e){let n={method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(e)};return n.mode="cors",await fetch(t,n)}async function it(t){t.hashid?(d("[loader]","[loader]","Registering visit",window.location.href),C(`${M(t.zone)}/api/v2/stats/visit`,{session_id:p.getSessionId(),user_id:p.getUserId(),store:t.store,hashid:t.hashid,url:window.location.href})):d("[loader]","No hashid. Skipping register visit")}s();s();function at(t){return`https://${t}-admin.doofinder.com`}async function ut(t){if(t.registerCheckouts){let e="",r=new MutationObserver(async function(o){e=await ct(e,t)}),n={subtree:!0,childList:!0};r.observe(document,n),e=await ct(e,t)}}async function ct(t,e){if(window.location.href.split("#")[0]!==t){let r=window.location.pathname,n=window.location.href,o=lt(e.checkout_confirmation_urls,r,n),i=lt(e.checkout_summary_urls,r,n);d("[checkout][logic] isCheckoutUrl",o),d("[checkout][logic] isCheckoutCartUrl",i),o&&Ir(e),i&&Dr(e),t=window.location.href.split("#")[0]}return t}async function Dr(t){let e=t.hashid,r=t.checkout_css_selector;if(r==null){let o=await C(`${at(t.zone)}/api/v1/graphql.json`,{query:$r,variables:{html_content:document.documentElement.outerHTML,hashid:e}});if(!o.ok||(o=await o.json(),r=o.data.updateCheckoutHtml?.checkoutHtml.products,!r))return}if(r===""){d("The provided CSS selector is an empty string");return}let n=document.querySelector(r);if(!n){d(`Cannot find element in DOM with CSS Selector ${r}`);return}C(`${M(t.zone)}/api/v2/stats/carts`,{hashid:e,session_id:p.getSessionId(),user_id:p.getUserId(),checkout_html:Or(Lr(n.outerHTML))})}async function Ir(t){let e=t.hashid;C(`${M(t.zone)}/api/v2/stats/sales`,{hashid:e,session_id:p.getSessionId(),user_id:p.getUserId(),has_init:p.isLive("layer")}),document.dispatchEvent(new CustomEvent("doofinder.layer.checkout",{detail:{tag:{_hashid:e},url:window.location.href}})),De()}var $r=` mutation UpdateCheckoutHtml($html_content: String!, $hashid: String!) { updateCheckoutHtml(html_content: $html_content, hashid: $hashid) { checkoutHtml { products } errors { key message } message } } `;function Or(t){let e=new TextEncoder().encode(t),r=Array.from(e,n=>String.fromCharCode(n)).join("");return btoa(r)}function Rr(t){return new RegExp(t.replaceAll("?","\\?").replaceAll(".","\\.").replaceAll("*",".*"))}function Lr(t){return t.replace(//g,"")}function lt(t,e,r){return t.filter(n=>n&&n.value&&n.value!=="").some(n=>{d("[checkout][anyUrlMatches] Checking checkout url for",n);let o=Rr(n.value),i=(()=>{switch(n.match_type){case"contains":return e.includes(n.value)||r.includes(n.value);case"equals":return e==n.value||r==n.value;case"regex":return o.test(e)||o.test(r);case"starts_with":return e.startsWith(n.value)||r.startsWith(n.value);default:return!1}})();return d(`[checkout][anyUrlMatches] Result for ${n.match_type}:`,i),i})}s();var ht=Ot(pt());function gt(){let{isPhone:t}=(0,ht.default)(navigator.userAgent);return t?"mobile":"desktop"}s();function _t(t){return t.map(e=>{let r=K(e.name);return r?r.backendAppToScriptApp(e):(console.error(`Doofinder app '${e.name}' not found`),!1)}).filter(e=>e)}var yt=!1;function xt(t,e,r){if(yt)throw new Error("Doofinder already exists!");{let g=function(u){let m=l.settings,_=st(u,m),S=u.register_visits||u.register_visits===void 0&&m.register_visits,Et=u.register_checkouts||u.register_checkouts==null&&m.register_checkouts,Tt=u.require_cookies_consent||u.require_cookies_consent===void 0&&m.require_cookies_consent;o={...u,..._,pageTypeMappings:m.page_type_mappings||[],registerVisits:S,registerCheckouts:Et,device:u.device||gt(),account_code:m.account_code,require_cookies_consent:Tt,checkout_confirmation_urls:m.checkout_confirmation_urls||[],checkout_summary_urls:m.checkout_summary_urls||[],checkout_css_selector:m.checkout_css_selector}},A=function(u,m,_=null){let S=tt(a,o,u,m,l,_);S&&(i[u]||(i[u]=[]),i[u].push(S))},St=function(){let u=vt();wt(u),u.forEach(m=>{A(...m),Ne(m,()=>A(...m))})},vt=function(){if(o.apps==!1)return e;let u=e.map(S=>S[0]),m=l.apps.filter(S=>!u.includes(S.name)),_=_t(m);return e.concat(_)},wt=function(u){u.forEach(m=>{let _=m[0];Fe.includes(_)&&Re(Ze(_))})};yt=!0;let n={},o={},i={},a,l,f=new T;n=Ke(Object.values(Be)),a=Ge(n),document.addEventListener("doofinder.register",u=>{let{name:m,entrypoint:_}=u.detail;n[m].resolve(_)});async function fe(u){l=u[0],g(t),o.require_cookies_consent||ee(),p.getSessionId(),p.getUserId(),p.getTabId(),y("script-version","2.0"),f.resolve(!0),d("[loader]","Doofinder ready. Apps will be initialized now."),St(),o.registerVisits&&(it(o),y("hashid",o.hashid)),ut(o)}return r?fe(r):rt(t.store,t.zone).then(u=>{fe(u)}).catch(u=>{Object.seal(u),f.reject(u)}),{get Session(){return p},getApp(u){return i[u]},getRegistry(u){return n[u]},buildCart(u){return new H(u)},ready(){return f.promise},enableCookies:ee,disableCookies:Se,enableDebug:ye,disableDebug:xe,setLayerServerUrl:$e,setCDNServerUrl:Ie,init:A,configure:g,registerApp:Qe}}}s();function bt(){let t=window.DoofinderAppsObject,e=window[t].q,r={},n=[],o=null,i;for(;i=e.shift();){let[a,l,f,g]=i;a==="config"?l==="settings"?o=f:r[l]=f:a==="init"&&n.push([l,f,g])}return{config:r,apps:n,scriptStoreConfig:o}}if(window.DoofinderStarted===void 0){window.DoofinderStarted=!0,he();let{config:t,apps:e,scriptStoreConfig:r}=bt(),n=xt(t,e,r);Object.defineProperty(window,"Doofinder",{value:n,writable:!1})}else console.warn("Multiple Doofinder single scripts detected. Only one will be executed.");})(); /*! Bundled license information: useragent-lite/lib/useragent-lite.js: (** * * @package useragent-lite * @version 0.0.2 * @copyright Copyright (c) 2014 - All rights reserved. * @license MIT License * @author Mark Florence * @link http://mflo.info * *) useragent-lite/index.js: (** * * @package useragent-lite * @version 0.0.2 * @copyright Copyright (c) 2014 - All rights reserved. * @license MIT License * @author Mark Florence * @link http://mflo.info * *) */